﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using WhiteRepositoryExplorer.Views;

namespace WhiteRepositoryExplorer.Model
{
    public class WhiteControlProperties
    {
        private readonly string _automationId;
        private readonly string _name;
        private readonly string _className;
        private readonly string _index;
        private readonly string _processId;
        private readonly string _localizedControlType;
        private readonly string _frameworkId;
        private readonly string _helpText;

        public WhiteControlProperties(string automationId, string name, string className, 
            string index, string processId, string localizedControlType, string frameworkId, string helpText)
        {
            _automationId = automationId;
            _name = name;
            _className = className;
            _index = index;
            _processId = processId;
            _localizedControlType = localizedControlType;
            _frameworkId = frameworkId;
            _helpText = helpText;
        }

        [Editor(typeof(ReadOnlyTextEditor), typeof(ReadOnlyTextEditor))]
        public string AutomationId
        {
            get { return _automationId; }
        }

        [Editor(typeof(ReadOnlyTextEditor), typeof(ReadOnlyTextEditor))]
        public string Name
        {
            get { return _name; }
        }

        [Editor(typeof(ReadOnlyTextEditor), typeof(ReadOnlyTextEditor))]
        public string ClassName
        {
            get { return _className; }
        }

        [Editor(typeof(ReadOnlyTextEditor), typeof(ReadOnlyTextEditor))]
        public string Index
        {
            get { return _index; }
        }

        [Editor(typeof(ReadOnlyTextEditor), typeof(ReadOnlyTextEditor))]
        public string ProcessId
        {
            get { return _processId; }
        }

        [Editor(typeof(ReadOnlyTextEditor), typeof(ReadOnlyTextEditor))]
        public string LocalizedControlType
        {
            get { return _localizedControlType; }
        }

        [Editor(typeof(ReadOnlyTextEditor), typeof(ReadOnlyTextEditor))]
        public string FrameworkId
        {
            get { return _frameworkId; }
        }

        [Editor(typeof(ReadOnlyTextEditor), typeof(ReadOnlyTextEditor))]
        public string HelpText
        {
            get { return _helpText; }
        }
    }
}
